<?php
/**
 * Log.php
 *
 * @author: cnx7 <zysafe@live.cn> 2019-08-25
 */

namespace common\domain\helper;

/**
 * Class Log
 *
 * 必要记录单独写入文件
 * 运行日志可采用Yii原生方式写入
 */
class Log
{
    /**
     * 写入日志
     * @param string $str 日志内容
     * @param string $type 日志分组
     * @param bool|string $dir 日志路径
     */
    public static function printLog($str, $type = '', $dir = false)
    {
        $file = date('Ymd') . ($type ? '_' . $type : '') . '.log';

        if (!$dir) {
            (new Log)->mkFolder(ROOT_PATH . '/runtime/log/' . date('Ym'));
            $dir = ROOT_PATH . '/runtime/log/' . date('Ym') . '/';
        }

        date_default_timezone_set('PRC');
        error_log(date("[Y-m-d H:i:s]") . " [" . \Yii::$app->params['reqId'] . "] " . $str . PHP_EOL, 3, $dir . $file);
    }

    /**
     * 创建目录
     * @param $path
     */
    function mkFolder($path)
    {
        if (!is_readable($path)) {
            is_file($path) or mkdir($path);
        }
    }

}
